package com.zhongwang.mms.module.material.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

/**
 * @Description: 原料在库列表实体
 * @Author: mc
 * @Date: 2020/04/16
 */
@Data
public class MAdjustInsModel {

    private Integer ityId;  //物料主键

    private Integer ityMatId;  //原料外键

    private Integer ityInType;  //类型1：库存 2：项目（批次字段）

    private String ityProCode;  //项目编码（批次字段）

    private String ityProName;  //项目名称（批次字段）

    private String itySpec;  //特殊说明（批次字段）

    private String ityTrackCode;  //跟踪号（批次字段）

    private Integer ityDataStatus;  //状态  0：删除  1：正常 2：上锁（库存盘点或库存调整过程中，对物料上锁，不允许出入库）

    private Double ityNum;  //在库数量

    private Double ityWeight;  //在库重量

    private Double ityAvaNum;   //可用数量

    private Double ityAvaWeight;    //可用重量

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private String ityBackDate;     //回货日期

    private String ityRemark;   //备注

    private Double ityPrice; //单价（加权平均）

    private Double ityAmount;//金额（数据库公式自动计算）

    private Integer ityStoId; //仓库外键(应该作为联合主键)

    private String ityStoPlaceNum; //库位（暂不使用）

    private Integer adjId;    //申请表主键

    private Double adjAfterAvaNum;  //调整后可用数量

    private Double adjAfterAvaWeight; //调整后可用重量

    private Double adjAfterNum;     //调整后在库数量

    private Double adjAfterWeight;  //调整后在库重量

    private Double adjBeforeAvaNum; //调整前可用数量

    private Double adjBeforeAvaWeight;  //调整前可用重量

    private Double adjBeforeNum;    //调整前在库数量

    private Double adjBeforeWeight;  //调整前在库重量

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date adjAuditDate; //审核时间

    private String adjAuditSay; //审核意见

    private String adjAuditor;//审核人

    private Integer adjInType; //类型  1：库存 2：项目（批次字段）

    private String adjMatDesc;  //名称材质规格

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date adjDate;  //调整单制作时间

    private String adjPerson;  //调整单制作人员

    private String adjProjectCode;  //项目编码（批次字段）

    private String adjProjectName; //项目名称（部位，批次字段）

    private String adjReason;  //调整原因

    private String adjSpec; //特殊说明（批次字段）

    private Integer adjStatus;  //状态 1：删除 2：保存 3：提交 4：审核通过 5：审核不通过

    private String adjTrackCode; //跟踪号（批次字段）

    private String adjAcc; //帐号

    private Integer adjAfterMatId; //原料外键

    private Integer adjAfterItyId;  //调整后原料在库外键

    private Integer adjBeforeItyId;  //调整前原料在库外键

    private Double adjPrice;  //单价


}